package com.muyu.danmo.service;


import com.muyu.common.core.domain.Result;
import com.muyu.danmo.domain.DanmoCommunityLike;

import java.util.List;

/**
 * 社区点赞接口
 * @author : kunzong
 * @date : 2024-11-19
 */
public interface IDanmoCommunityLikeService {

    /**
     * 保存点赞记录
     * @param like 点赞记录
     * @return 保存成功后的点赞记录
     */
    DanmoCommunityLike saveLike(DanmoCommunityLike like);

    /**
     * 根据点赞ID删除点赞记录
     * @param id 点赞ID
     * @return 删除是否成功
     */
    boolean deleteLikeById(int id);

    /**
     * 根据帖子ID获取所有点赞记录
     * @param postId 帖子ID
     * @return 点赞记录列表
     */
    List<DanmoCommunityLike> getLikesByPostId(int postId);

    /**
     * 根据用户ID获取所有点赞记录
     * @param userId 用户ID
     * @return 点赞记录列表
     */
    List<DanmoCommunityLike> getLikesByUserId(Long userId);

    /**
     * 根据点赞ID获取点赞记录
     * @param id 点赞ID
     * @return 点赞记录
     */
    DanmoCommunityLike getLikeById(int id);

    /**
     * 判断用户是否已点赞
     * @param id 点赞ID
     * @return 点赞记录
     */
    Result isCollect(Long id);
}